System and method for interacting with a program guide displayed on a portable electronic device

ABSTRACT

An electronic program guide system. A program schedule is presentable in a display as a grid of two-dimensionally arranged cells with a program identifier being displayed in each of the cells, the grid having a plurality of channels listed in a first dimension and time listed in a second dimension of which a portion of the entirety of the grid is displayable in the display. A user may interact with the electronic program guide to change the program schedule information that is displayed and/or to transmit one or more command codes to a target appliance.

RELATED APPLICATION INFORMATION

[0001] This application claims the benefit of U.S. Provisional Patent Application No. 60/344,020, filed on Dec. 20, 2001, 60/371,223, filed on Apr. 9, 2002, 60/374,556 filed on Apr. 22, 2002, and 60/390,167, filed on Jun. 20, 2002.

[0002] This application also claims the benefit of and is a continuation-in-part of U.S. patent application Ser. No. 09/905,396.

[0003] All of these prior applications are incorporated herein by reference in their entirety.

BACKGROUND OF THE INVENTION

[0004] This invention generally relates to portable electronic devices having a display and communication capabilities. Exemplary devices include personal digital assistants (“PDAs”), Web Tablets, touch screen remote controls, lap-top computers, and the like.

SUMMARY OF THE INVENTION

[0005] In accordance with the description that follows, a system and method is provided for navigating a program guide and/or for using a program guide to command operation of an appliance. An understanding of the objects, advantages, features, properties and relationships of the invention will be obtained from the following detailed description and accompanying drawings which set forth illustrative embodiments and which are indicative of the various ways in which the principles of the invention may be employed.

BRIEF DESCRIPTION OF THE DRAWINGS

[0006] For a better understanding of the various aspects of the invention, reference may be had to preferred embodiments shown in the attached drawings in which:

[0007] FIGS. 1-4 illustrate an exemplary program guide and an exemplary system for navigating within the program guide;

[0008]FIG. 5 illustrates an exemplary method for accessing an illustrated, exemplary program guide calendar;

[0009]FIG. 6 illustrates an exemplary method for accessing an illustrated, exemplary program information window;

[0010] FIGS. 7-11 illustrates exemplary methods for accessing an illustrated, exemplary zoomed-in portion of a program guide;

[0011]FIG. 12 illustrates an exemplary device platform having hard keys for use in transmitting command codes to one or more target appliances;

[0012]FIG. 13 illustrates an exemplary display for providing information relevant to the hard keys of FIG. 12;

[0013] FIGS. 14-18 illustrate an exemplary graphical user interface method for configuring the hard keys of FIG. 12 to cause the transmission of commands to command the operation of one or more appliances;

[0014]FIG. 19 illustrates an exemplary method for causing the transmission of commands to command the operation of one or more appliances via interaction with a program guide; and

[0015] FIGS. 20-21 illustrate an exemplary method for configuring device transmissions in response to interaction with the program guide.

DETAILED DESCRIPTION

[0016] A universal remote control and program guide application are provided for executing on a portable electronic device 10. By way of example, representative platforms for the device 10 include, but are not limited to, devices such as remote controls, lap-top computers, Web Tablets and/or PDAs manufactured by HP/Compaq (such as the iPAQ brand PDA), Palm, Visor, Sony, etc. Thus, a preferred underlying platform includes a processor coupled to a memory system comprising a combination of ROM memory, non-volatile read/write memory, and RAM memory (a memory system); a key matrix in the form of physical buttons; an internal clock and timer; a transmission circuit; a power supply; a touch screen display to provide visible feedback to and accept input from a consumer; and I/O circuitry for allowing the device to exchange communications with an external computer such as server and/or client. Additional input circuitry, such as a barcode reader, may also be utilized.

[0017] To control the operation of the device 10, the memory system includes executable instructions that are intended to be executed by the processor. In this manner, the processor may be programmed to control the various electronic components within the device 10, e.g., to monitor power, to cause the transmission of signals, etc. Within the memory system, the ROM portion of memory is preferably used to store fixed programming and data that remains unchanged for the life of the product. The nonvolatile read/write memory, which may be FLASH, EEPROM, battery-backed up RAM, “Smart Card,” memory stick, or the like, is preferably provided to store consumer entered setup data and parameters, downloaded data, etc., as necessary. RAM memory may be used by the processor for working storage as well as to hold data items which, by virtue of being backed up or duplicated on an external computer (for example, a client device) are not required to survive loss of battery power. While the described memory system comprises all three classes of memory, it will be appreciated that, in general, the memory system can be comprised of any type of computer-readable media, such as ROM, RAM, SRAM, FLASH, EEPROM, or the like in combination. Preferably, however, at least part of the memory system should be non-volatile or battery backed such that basic setup parameters and operating features will survive loss of battery power. In addition, such memories may take the form of a chip, a hard disk, a magnetic disk, and/or an optical disk without limitation.

[0018] For commanding the operation of appliances of different makes, models, and types, the memory system may also include a command code library. The command code library is comprised of a plurality of command codes that may be transmitted from the device 10 under the direction of application(s) for the purpose of controlling the operation of an appliance. The memory system may also includes instructions which the processor uses in connection with the transmission circuit to cause the command codes to be transmitted in a format recognized by an identified appliance. While the transmission circuit preferably utilizes infrared transmissions, it will be appreciated that other forms of wired or wireless transmissions, such as radio frequency, may also be used.

[0019] To identify appliances by type and make (and sometimes model) such that application(s) of the device 10 are adapted to cause the transmission of command codes in the format appropriate for such identified appliances, information may be entered into the device 10. Since methods for setting up an application to cause the transmissions of commands to control the operation of specific appliances are well-known, they will not be described in greater detail herein. Nevertheless, for additional details pertaining to remote control setup, the reader may turn to U.S. Pat. Nos. 6,225,938, 4,623,887, 5,872,562, 5,614,906, 4,959,810, 4,774,511, and 4,703,359 which are incorporated herein by reference in their entirety.

[0020] To cause the device 10 to perform an action, the device 10 is adapted to be responsive to events, such as a sensed consumer interaction with one or more keys on the key matrix, a sensed consumer interaction with the touch screen display, or a sensed signal from an external source such as a remote computer. In response to an event, appropriate instructions within the memory system are executed. For example, when a hard or soft command key associated with a remote control application is activated on the device 10, the device 10 may read the command code corresponding to the activated command key from the memory system and transmit the command code to an appliance in a format recognizable by the appliance. It will be appreciated that the instructions within the memory system can be used not only to cause the transmission of command codes to appliances but also to perform local operations. While not limiting, local operations that may be performed by the device that are related to the remote control functionality include favorite channel setup, macro button setup, command function key relocation, etc. Examples of such local operations can be found in U.S. Pat. Nos. 5,481,256, 5,959,751, 6,014,092, which are incorporated herein by reference in their entirety.

[0021] As discussed, the platform of the device 10 preferably comprises a general purpose, processor system which is controllable by software. The software may include routines, programs, objects, components, and/or data structures that perform particular tasks that can be viewed as an operating system together with one or more applications. The operating system, such as the “Windows CE” brand operating system or the like, provides an underlying set of management and control functions which are utilized by applications to offer the consumer functions such as a calendar, address book, spreadsheet, notepad, Internet browsing, etc., as well as control of appliances. Thus, it is to be understood that applications in addition to or complimentary with the remote-control-like application can also be supported by the device 10 and, as such, in terms of the internal software architecture, the remote-control-like application may be but one of several possible applications which may co-exist within the device 10.

[0022] In terms of providing operating system functionality, it should also be understood that the demarcation between the device 10 and a host/client computer, described in greater detail hereinafter, may vary considerably from product to product. For example, at one extreme the device 10 may be nothing more than a slave display and input device in wireless communication with a computer that performs all computational functions. At the other extreme, the device 10 may be a fully-functional computer system in its own right complete with local mass storage. It is also to be appreciated that a hardware platform similar to that described above may be used in conjunction with a scaled-down operating system to provide remote control functionality only, i.e., as a standalone application. In all cases, however, the principles expressed herein remain the same.

[0023] To provide a means by which an consumer can interact with the device 10, the device 10 is preferably provided with software that implements a graphical user interface. The graphical user interface software may also provide access to additional software, such as a browser application, that is used to display information that may be received from an external computer. Such a graphical user interface system is described in pending U.S. applications Ser. No. 09/905,396, 60/334,774, and 60/344,020 all of which are incorporated herein by reference in their entirety.

[0024] For simplifying the process of navigating a downloaded program guide, which would be comprised of a grip of channels, times, and program information, the device 10 utilizes a program guide interface that takes advantage of the touch-screen style display. In particular, the program guide interface is designed to overcome one of the more annoying aspects associated with presently known program guides which results when consumers attempt to step from one channel (or time) to another channel (or time) that is relatively far away within a program guide. In particular, to navigate within presently known program guides, the consumer must repetitively press a navigation key, such as up/down, page up/down, time +/−, day forward/back, etc. As will be appreciated, navigation in this manner becomes increasingly tedious and frustrating to consumers as the number of entries within the program guide expands (e.g., with the addition of digital cable channels, satellite channels, etc.).

[0025] To address this problem, the user interface of the device 10 provides a horizontal slider 2 and a vertical slider 3 that, as illustrated in FIG. 1, allows for ease of movement through channels and times that are contained within the program guide. When a slider 2/3 is first touched with a stylus, finger, or the like, (i.e., a first user input is received) a banner 4 pops up next to the slider 2/3. The banner 4 includes a representation that corresponds to the current position of the slider as illustrated in FIGS. 2 and 3. As will be appreciated, the current, relative position of the slider 2/3 within the slider bar is representative of the guide information currently being displayed relative to the entirety of information within a given program guide that is displayable.

[0026] When a slider 2/3 is moved, the information in the banner 4 is preferably, continuously updated to display the relative position of the slider 2/3 within the slider bar so as to provide an indication of the guide information that would be displayed relative to the entirety of information within a given program guide that is displayable should the slider 2/3 be released. For example, the banner 4 might indicate a channel corresponding to the current position of the slider 3 (e.g., channel program information that would be displayed at the top of the display as the starting point of the displayed information) or the banner 4 might indicate a time corresponding to the current position of the slider 2 (e.g., program information for a time period that would be displayed at a side of the display as the starting point of the displayed information). It is further preferred that the underlying information that is displayed not be changed as a slider 2/3 is moved until the slider 2/3 is released (e.g., the stylus is lifted off the slider as a second user input) as illustrated in FIG. 4. In this way a consumer that wishes to change the channel program information being viewed from, for example, CBS (channel 2) to BBC America (channel 264), need only grab the slider 3, move the slider 3 vertically until it shows “BBCA 264,” and then release the slider 3. A similar approach applies to the time slider 2 which allows you to move the program guide display horizontally to any hour in the current day. It will be appreciated that the second user input that results in the changing of the displayed grid information may also require acts in addition to or in lieu of the user merely releasing the slider (e.g., a double tap of the slider, activation of another icon, etc.).

[0027] To accommodate consumers that who prefer the old way of navigating through the information in the program guide, the interface allows the consumer to tap the arrows 6 at the ends of each slider bar to move/scroll the information one logical page either vertically or horizontally. In the illustrated example, a logical page vertically would comprise 5 rows of channels and one logical page horizontally would comprise a one hour time period. When moving thorough the program guide grid in this manner, the position of the sliders 2/3 should be updated to reflect the current, relative information being displayed. During this procedure, it is not necessary for a banner 4 to be displayed.

[0028] To allow the consumer to change the time period for the entirety of the displayable program guide information, e.g., to change days, the interface may provide two options. First, if the time slider (e.g., horizontal slider 2) is moved all the way to its slider bar limit (e.g., the right which is illustrated as corresponding to 11:00 PM—i.e., the end of the current displayable information) and the arrow 6 on the slider bar adjacent to the limit is clicked, the guide information rolls over to the next time period (e.g., 00:00 AM) and the time slider is automatically repositioned to the start of the slider bar (e.g., the extreme left hand side). A similar procedure performed in the reverse direction would be utilized to change the program guide information that is displayable to an earlier time period.

[0029] Alternatively, the consumer may activate (i.e., touch) a “calendar” icon 8 which is illustrated at the bottom left of the display to the left of the date. When the calendar icon 8 is touched, a calendar display 11 can be caused to appear as illustrated in FIG. 5. The calendar display 11 allows two purposes to be served. First, the calendar display 11 allows the consumer to go directly to any day shown by simply selecting that day on the calendar. Second, the calendar display 11 can serve as an indication to the consumer of how many days worth of program guide information remains when, for example, the consumer needs to dock the device 10 and/or log onto a Web site in order to download guide information as described in pending application No. 60/390,286 that is incorporated herein by reference in its entirety. In the example shown in FIG. 5, the calendar display 11 informs the consumer that the guide information currently being displayed is for April 2^(nd), this indication being made by providing a distinct, coloring, shading, etc. to the date, for example. The calendar display 11 may further inform the consumer that the consumer last downloaded two weeks worth of guide data on March 22^(nd) and has not logged on/synchronized with the guide database since then, these dates being indicated by being labeled, for example. Thus, as illustrated, the consumer is informed that they only have two more days of current information left (April 3 and 4)—which is indicated by the days following April 4 being labeled and not being hi-lighted, for example. The consumer can navigate immediately to gain access to program guide information, i.e., the programming grid, for either of the hi-lighted days, April 3 or April 4 (or, for that matter, to any of the days already past) by selecting that data on the calendar page 11. Thus, it will be appreciated that the calendar page 11 functions as a visual gauge to display the amount of schedule information remaining and serves as a reminder that the consumer should refill this information.

[0030] Once the consumer has positioned the program guide to the desired time/channel information, touching a channel button 13 (e.g., the left column) can cause the device 10 to instruct an appliance to immediately switch to that channel (i.e., to send the IR command(s) to switch to that channel.) Furthermore, touching a program name 15, “Friends” in the example shown, can cause the display of additional information in a window 17, for example, regarding that program. When information for a program that is scheduled to air some time in the future is displayed, a “Remind me” checkbox 19, or other known GUI element, can also be presented to the consumer. Selecting this checkbox 19 can be used to cause a reminder to be automatically entered into a calendar application supported by the device 10.

[0031] For improving the visibility of programming information contained within the program guide, particularly for consumers with imperfect eyesight, and/or on devices such as high-resolution Web tablets capable of displaying a large amount of information on a relatively small screen area, the device 10 can provide a means for accessing an enlarged or zoomed representation of a portion of the program guide. To this end, as illustrated in FIGS. 7 and 8, a “zoom” button 12 may be provided as a soft key at a convenient location within the display, for example, in the illustrated bottom of the display, adjacent the display as a hard key, etc. In response to an activation of the “zoon” button 12, e.g., by touching a softkey with a stylus 20, with a finger, moving a cursor over the icon and activating/clicking a hard key, etc. as illustrated in FIG. 8, an enlarged display 30 comprising a subgroup of the displayable program guide information is presented to the user, as illustrated in FIG. 9.

[0032] The portion of the program guide displayed as the enlarged portion 30 may be used to display a predetermined amount of programming information to the user (e.g., programming information related to a predetermined range of channels and/or predetermined time periods) or simply contain as much programming information as can be fit into the enlarged display based upon the font size, etc. selected for use in the zooming application. Furthermore, the specific programming information that is contained within the enlarged portion 30 of the program guide may also be predetermined (e.g., based only upon the portion of the program guide that is visible within the display prior to enlargement—see FIG. 7) or established using user-preferences. For example, the enlarged portion of the program guide 30 may comprise an enlarged view of programming information (i.e., programming grid cells) for a predetermined number of channels (in the illustrated example the number is 5) commencing from a predetermined starting channel number (in the example, the starting channel number “72” corresponds to the channel number that is at a predetermined position—such as at the top of the un-enlarged guide as illustrated in FIG. 7). Similarly, the enlarged portion of the program guide 30 may comprise an enlarged view of programming information for one or more channel listings over a predetermined time period (in the illustrated example 2 hours) commencing from a predetermined starting time (in the example, the starting time corresponds to a predetermined time—such as the time at the left most portion of the un-enlarged guide as illustrated in FIG. 7). It is also contemplated that the predetermined time could be a time commencing with a current time that is maintained within the device 10. As noted, the enlarged guide portion 30 may also contain programming information that is consumer-specified, such as programming information pertaining to consumer specified favorite channels (either commencing at a consumer-specified channel, including only those specified by a consumer, those determined to be most selected by a consumer, etc.) and/or user-specified favorite times.

[0033] For the purpose of demonstrating to the consumer that the device 10 is in zoom mode, i.e., the display is showing an enlarged portion of the program guide, the appearance of the icon 12 may be changed. By way of example, the icon 12 can be presented with a line through it to show an activated condition as illustrated by the icon 32 of FIG. 9. In this case, the icon in question acts as a toggle to switch in and out of zoom mode and thus the representation illustrated by 32 in FIG. 9 is used to indicate that the next activation of this icon will cancel the zoom mode. It is also contemplated that the color of the icon can be changed, the icon can be flashed, etc.

[0034] The programming information contained within the enlarged portion 30 of the program guide may also be determined based upon interaction with the un-enlarged program guide by the consumer. For example, the consumer may indicate a desire to enter the zoom mode (e.g., by touching the zoom icon which readies the device for zooming, which readiness may be indicated to the user by the display of an icon having a changed or changing appearance) followed by the consumer indicating a location within the un-enlarged program guide that the consumer wishes to have enlarged. The indication of the location may be provided by the consumer using the graphical user interface (e.g., touching a location on the display with a finger or stylus as illustrated in FIG. 10) to select a cell or area of cells of interest within the displayed un-enlarged guide, by moving the scroll bars, etc. Upon receiving the indication, the software causes appropriate programming information to be displayed in the enlarged portion 30 of the program guide. In the illustrated example, the touching of the “Dark Shadow” cell within the un-enlarged program guide may cause the enlarged portion 30 to present programming information that commences with channel 74 and time 11:00 am. It is to be understood that the user may navigate within the un-enlarged program guide to find channels and/or times of interest before performing the step of indicating which cell or cells should be enlarged. It will also be appreciated that this two step process, i.e., indicating a desire to enlarge the program guide followed by another user interaction with the device, can result in the display of predetermined information within the enlarged portion 30 as described above, e.g., favorites, programming information commencing with the channel and time in the upper left most corner of the displayed un-enlarged program guide, etc.

[0035] To change the programming information that is presented within the enlarged portion 30 of the program guide, the user can exit the zoom mode, by retouching the icon 32 for example, and then reinitiating the zoom feature at a different location within the un-enlarged program guide, for example, when a two-step process is utilized. Alternatively, the graphical user interface may be used in manner that indicates to the device that the user wishes to scroll the program guide within the enlarged display area 30 thus changing the portion of the program guide shown there within. This indication can be performed using standard GUI techniques such as associating scroll bars with the display of the enlarged portion 30, scrolling as a result of following the movement of a finger or stylus within the display, etc. In this manner, the consumer may conveniently navigate within the enlarged display portion 30 just as a consumer can navigate within the un-enlarged display portion.

[0036] It is to be further understood that the zooming feature may also be used to present control function icons and/or other aspects of the graphical user interface in a larger, more prominent manner without limitation. An example of an enlarged icon is illustrated as icon 12 in FIG. 11.

[0037] To transmit command codes to an appliance (or perform local operations), a consumer may activate hard keys 70, for example, at the bottom of the device 10 in the exemplary platform illustrated in FIGS. 12 and 13. In this illustrated example, four individual buttons 70 a and one 5-way rocker button 70 b (4 directions plus a “press to select”) comprise the hard keys 70. The remote control application allows commonly-used functions to be mapped onto the hard keys 70. For example, operations such as “Controls” (Volume, Channel +/−, mute), “Navigation” (directional arrows and select), or “Transport” (Play, fast forward, rewind, etc) can be mapped onto the keys 70. The current operations to be performed in response to activation of keys 70 can be presented in a display 72, shown in FIG. 13, for example, by pressing one of the hard keys 70 which is permanently assigned to the function of displaying key assignments. In the illustrated example, in the case of the illustrated platform, the display assignments key 70 is shown to be the upper one of the two right hand individual keys (labeled “keys” in the display 72).

[0038] Referring now to FIG. 14, the operations assigned to the keys 70 can be changed by the consumer activating a command button, e.g., icon 76 shown at the lower right corner of the exemplary screen shot. Activation of the command icon 76 can be used to pop-up a menu 78, an example of which is illustrated in FIG. 15, by which the user may change the operations mapped to the keys 70. By way of illustration, the first three items on the menu correspond to the three possible assignments for the hard keys. e.g., the keys 70 may have operations mapped to them such that activation of the keys cause the device 10 to transmit command codes to command “navigation,” “control” or “transport” functions of a target appliance. The fourth menu choice, “Master Control,” allows the consumer to specify a specific target appliance to which any transmitted command codes are to be sent (i.e., the command codes are formatted so as to be understood by the target appliance). The default, in the absence of any user setup, can be to simply have the device 10 transmit command code signals in a format appropriate for a target appliance that has been designated for the current device mode of the platform, i.e., the device mode indicated by the icon 80 at the top of the device mode wheel 82. Selecting the “Master Control” item of the menu 78 may be used to start a Master Control Setup Wizard, an example of which is illustrated in FIGS. 16 and 17.

[0039] Turning to FIG. 16, the Master Control Setup Wizard may present to a consumer one or more drop-down lists 84 by which the consumer can select the target appliance for any transmitted command signals, e.g., signals to be used for each of channel changing, volume control, and transport functions. Preferably, the assignments performed using the Master Control Setup Wizard are only with respect to the hard keys 70. FIG. 18 shows an example drop-down list from which the user may select the target device for signals to command channel changing operations. While not intended to be limiting, the choices illustrated in FIG. 18 include only devices which have been set up by the user in connection with configuring the device mode wheel 82 (as described in U.S. application Ser. No. 60/334,774 which is incorporated herein by reference in its entirety, these are the appliances the device 10 has been setup to control the operation of).

[0040] To transmit commands to tune a target appliance to a specified channel using a program guide, an example of which is illustrated in FIG. 19, a user need only select or activate a channel button 86 which, in the illustrated example, is a soft key in the leftmost column of the program guide grid. As noted previously, activation of a channel button 86 will cause the device 10 to transmit a command signal, for example using an IR protocol, to command the target appliance to switch to the selected channel. The channel number to tune to in response to activation of a channel button 86 is preferably pre-calculated at the time the guide is downloaded from a Web site, or the like. In this regard, the guide information is populated, for example, based on the zip code and service provider information submitted by the user when registering for the service as described in U.S. application Ser. No. 60/390,286 that is incorporated herein by reference in its entirety. Accordingly, in the illustrated example, activation of the “TLC” channel button in the downloaded program guide would send a command to cause the target appliance to tune to channel 280 which is the channel on which the specified service provider is known to carry TLC content.

[0041] When transmitting a command to cause the appliance to tune to a specified channel, the default channel changing operation comprises sending the desired channel digits (a minimum of two, i.e., single digit numbers are prefixed with a leading zero) as a sequence of IR data commands in the format of the channel changing device specified in the Master Control Setup. Accordingly, the actual physical transmission of the sequence of commands is no different than playing back a user-programmed macro. The consumer may be provided, however, with the capability to adjust this default sequence described above if necessary to suit his particular equipment. Any such adjustment may be performed, for example, by touching a “setup” command button 88 (e.g., the wrench icon in the lower left corner of the guide display screen). Activation of the setup command button 88 can be used to present to the consumer a pop-up, setup menu 90 as illustrated in FIG. 20. As can be seen from the menu listings, among the setup choices can be provided a choice to allow the content of the program guide to be filtered and arranged for display. Furthermore, selecting a choice labeled “Options” can be used to invoke a configuration screen illustrated in FIG. 21.

[0042] Using the configuration screen, the consumer may change the master channel tuning device which may offer the same list of appliances and would affect the same parameter as the “Master Control Setup” wizard described earlier in connection with FIGS. 15-18. Additionally, the configuration screen can be used to allow a consumer to modify how the IR command sequence is to be constructed, i.e., allow the consumer to vary the minimum number of digits to be sent and to specify if an “enter” command is to be transmitted after the final digit is transmitted. (The “enter” function is mandatory for a few appliance brands, in others it is optional but often will speed up the channel changing response if used).

[0043] It will be appreciated that setup menus can also be provided to allow a consumer to specify a target device for command(s) transmitted by interacting with the program guide that need not be tied to the intended target appliance associated with the hard keys 70. Additionally, provision may be made for specifying multiple target appliances for use with the program guide. For example, when the platform is setup in a mode to command appliances in a first room, a first target appliance can be associated with the program guide and when the platform is setup in a mode to command appliances in a second room, a second target appliance can be specified to be associated with the program guide. Similarly, different target appliances can be specified to be the intended target for commands transmitted as a result of interacting with the program guide for each individual consumer setup to use the platform. Still further, if the program guide is adapted to show information from multiple sources, e.g., cable and satellite, different target appliances can be associated with different listing within the program guide as a function of the programming source.

[0044] While specific embodiments of the invention have been described in detail, it will be appreciated by those skilled in the art that various modifications and alternatives to those details could be developed in light of the overall teachings of the disclosure. For example, the programming grid need not be limited to channels being displayed in horizontal rows and times in columns. Rather, the principles expressed herein would be useful in connection with any manner for displaying program information that allows the information displayed to be changed or scrolled. Accordingly, the particular arrangement disclosed is meant to be illustrative only and not limiting as to the scope of the invention which is to be given the full breadth of the appended claims and any equivalents thereof.

[0045] All of the cited references are incorporated herein by reference in their entirety. 

What is claimed is:
 1. In a hand-held device, a computer-readable media having instructions for displaying programming information, the instructions performing steps comprising: displaying within a display of the hand-held device at least a portion of a program guide having programming information for a plurality of channels over periods of time; accepting user input indicating a desire to enlarge a subset of the programming information for viewing within the display; and in response to the input, enlarging the subset of the programming information and displaying the enlarged subset of the programming information within the display.
 2. The computer-readable media as recited in claim 1, wherein the program guide comprises a set of cells arranged in a plurality of rows corresponding to channels and a plurality of columns corresponding to periods of time.
 3. The computer-readable media as recited in claim 2, wherein the subset of the programming information that is enlarged is predetermined as a function of the portion of the program guide displayed within the display at the time the user input is received.
 4. The computer-readable media as recited in claim 3, wherein the subset of programming information that is enlarged is contained within program guide cells starting with a predetermined channel and a predetermined period of time.
 5. The computer-readable media as recited in claim 4, wherein the predetermined channel is the channel corresponding to the top most row of cells displayed as part of the portion of the program guide.
 6. The computer-readable media as recited in claim 4, wherein the predetermined period of time is the period of time corresponding to the left most column of cells displayed as part of the portion of the program guide.
 7. The computer-readable media as recited in claim 2, further comprising the step of displaying a soft key by which the user inputs the desire to enlarge the subset of the programming information.
 8. The computer-readable media as recited in claim 7, wherein interaction with the soft key causes the display to toggle between the display of the enlarged subset of the programming information and the display of the program guide.
 9. The computer-readable media as recited in claim 8, wherein the appearance of the soft-key changes to represent the current toggle state.
 10. The computer-readable media as recited in claim 2, wherein the user input comprises a selection of a cell within the program guide and the subset of the programming information that is enlarged is contained within cells starting with a channel corresponding to the channel row of the cell selected and a period of time corresponding to the period of time column of the cell selected.
 11. The computer-readable media as recited in claim 10, wherein the programming information that is enlarged encompasses a predetermined number of channels and predetermined periods of time.
 12. The computer-readable media as recited in claim 2, wherein the programming information that is enlarged is displayed in a window that at least partially overlays the display of at least a portion of the program guide.
 13. The computer-readable media as recited in claim 1, further comprising the step of accepting user input to change the subset of programming information displayed as the enlarged subset of programming information.
 14. The computer-readable media as recited in claim 13, wherein the programming information displayed as the enlarged subset of programming information is changed to follow a direction of movement input by the user on the hand-held device.
 15. The computer-readable media as recited in claim 14, wherein the direction of movement is input by the user dragging an object across the display of the hand-held device.
 16. The computer-readable media as recited in claim 1, wherein the subset of the programming information is user-defined.
 17. The computer-readable media as recited in claim 16, wherein the user-defined subset of the programming information comprises a list of user-defined favorite channels.
 18. A method for controlling the operation of a consumer electronic device, comprising: displaying program schedule information received via a network comprised of broadcast channel identifiers and programming information for each broadcast channel identifier; accepting input designating a broadcast channel identifier from the program schedule information; and using the designated broadcast channel identifier to transmit a wireless signal to the consumer electronic device to cause the consumer electronic device to tune to the broadcast channel corresponding to the designated broadcast channel identifier.
 19. The method as recited in claim 18, wherein the wireless signal is an IR signal.
 20. The method as recited in claim 18, wherein the wireless signal is an RF signal.
 21. The method as recited in claim 18, wherein the program schedule information is displayed in a touch screen of a device having a remote control application.
 22. The method as recited in claim 21, wherein the program schedule information is displayed in a grid of rows and columns in which each of the broadcast channel identifiers occupy a row in a first column in the grid and the programming information occupy further columns in the grid in the same row as their corresponding broadcast channel identifier and further arranged as a function of time.
 23. The method as recited in claim 22, wherein input designating a broadcast channel identifier comprises a user interacting with the touch screen to select a row in the first column.
 24. The method as recited in claim 23, wherein the broadcast channel identifiers comprise a channel number and a designator of programming origin.
 25. The method as recited in claim 18, wherein the wireless signal is constructed according to a user preference.
 26. The method as recited in claim 25, wherein the user preference comprises requesting a transmission of an enter command as a part of the wireless signal.
 27. The method as recited in claim 25, wherein the user preference comprises specifying a minimum number of digit indicators to be included as a part of the wireless signal.
 28. The method as recited in claim 18, further comprising accepting user input that specifies the consumer electronic device as an intended target of the wireless signal.
 29. The method as recited in claim 28, wherein the consumer electronic device is associated with a room via the user input.
 30. The method as recited in claim 18, wherein the consumer electronic appliance to which the wireless signal is transmitted is selected as a function of a source of the programming corresponding to the designated broadcast channel identifier.
 31. A readable media having instructions for controlling the operation of a consumer electronic device, the instructions performing steps comprising: displaying program schedule information received via a network comprised of broadcast channel identifiers and programming information for each broadcast channel identifier; accepting input designating a broadcast channel identifier from the program schedule information; and using the designated broadcast channel identifier to transmit a wireless signal to the consumer electronic device to cause the consumer electronic device to tune to the broadcast channel corresponding to the designated broadcast channel identifier.
 32. The readable media as recited in claim 31, wherein the program schedule information is displayed in a touch screen of a device having a remote control application.
 33. The readable media as recited in claim 32, wherein the program schedule information is displayed in a grid of rows and columns in which each of the broadcast channel identifiers occupy a row in a first column in the grid and the programming information occupy further columns in the grid in the same row as their corresponding broadcast channel identifier and further arranged as a function of time.
 34. The readable media as recited in claim 33, wherein input designating a broadcast channel identifier comprises a user interacting with the touch screen to select a row in the first column.
 35. The readable media as recited in claim 34, wherein the broadcast channel identifiers comprise a channel number and a designator of programming origin.
 36. The readable media as recited in claim 31, wherein the wireless signal is transmitted using an IR protocol.
 37. The readable media as recited in claim 31, wherein the wireless signal is transmitted using an RF protocol.
 38. The readable media as recited in claim 31, wherein the wireless signal is transmitted using a channel digit setting specified by a user.
 39. The readable media as recited in claim 31, wherein the wireless signal is transmitted using an enter command if specified by the user.
 40. An electronic program guide system, comprising: a display; a schedule presented in the display as a grid of two-dimensionally arranged cells with a program identifier being displayed in each of the cells, the grid having a plurality of channels listed in a first dimension and time listed in a second dimension of which a portion of the entirety of the grid is displayable in the display; a first scroll bar associated with the schedule having a first slider for indicating a position of the displayed portion of the grid relative to the entirety of the grid in one of the dimensions; a user input device coupled to the display, wherein a first user input is used to change the position of the first slider and a second user input is used to cause the displayed portion of the grid to change; wherein display of the portion of the grid is not changed until the second user input is received and wherein, as the first slider is moved with the first user input, an indication of the position of the portion of the grid relative to the entirety of the grid in the one of the dimensions corresponding to the current position of the moving slider is displayed.
 41. The system as set forth in claim 40, wherein the first scroll bar indicates a position of the displayed portion of the grid relative to the entirety of the grid in the first dimension and further comprising a second scroll bar associated with the schedule having a second slider for indicating a position of the displayed portion of the grid relative to the entirety of the grid in the second dimensions and wherein the user input device is used to change the position of the first or second slider and, as either the first or second slider is moved with the first user input, an indication of the position of the portion of the grid relative to the entirety of the grid in the dimension corresponding to the current position of the moving first or second slider is displayed.
 42. The system as set forth in claim 41, wherein the entirety of the grid includes twenty-four hours in the second dimension.
 43. The system as set forth in claim 41, further comprising activatable soft keys for changing the position of the first or second sliders and the portion of the grid being displayed by a predetermined amount.
 44. The system as set forth in claim 40, wherein moving the first slider with the first user input displays a channel designation that changes as the position of the first slider changes so as to provide an indication of the portion of the entirety of the grid that would be displayable in the display in response to receipt of the second input.
 45. The system as set forth in claim 41, wherein moving the second slider with the first user input displays a time designation that changes as the position of the second slider changes so as to provide an indication of the portion of the entirety of the grid that would be displayable in the display in response to receipt of the second input.
 46. An electronic program guide system, comprising: a display; an updatable schedule presentable in the display as a grid of two-dimensionally arranged cells with a program identifier being displayed in each of the cells, the grid having a plurality of channels listed in a first dimension and time listed in a second dimension, wherein the schedule maintains information for a given period of days; and a graphical user interface element shown in the display that functions to indicate when the schedule must be updated with grids for additional day periods.
 47. An electronic program guide system, comprising: a display; a calendar shown in the display having a plurality of days; and a graphical user interface input device for use in selecting one of the days in the calendar whereupon the selection results in the display of a schedule for the selected day presented in the display as a grid of two-dimensionally arranged cells with a program identifier being displayed in each of the cells, the grid having a plurality of channels listed in a first dimension and time listed in a second dimension.
 48. The system as recited in claim 40, wherein the first user input comprises the user engaging the first slider and the second user input comprises the user releasing the first slider. 